home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / The World of Computer Software.iso / ms_sh21c.zip / readme < prev    next >
Text File  |  1992-12-14  |  8KB  |  182 lines

  1.  MS-DOS Shell Version 2.1    README                December 1992
  2.  
  3.  MS-DOS SHELL - Copyright (c) 1990,1,2 Data Logic Limited and Charles Forsyth
  4.  
  5.  This code is based on (in part) the shell program written by Charles
  6.  Forsyth and is subject to the following copyright restrictions:
  7.  
  8.  1.  Redistribution and use in source and binary forms are permitted
  9.      provided that the above copyright notice is duplicated in the
  10.      source form and the copyright notice in file sh6.c is displayed
  11.      on entry to the program.
  12.  
  13.  2.  The sources (or parts thereof) or objects generated from the
  14.      sources (or parts of sources) cannot be sold under any circumstances.
  15.  
  16.     $Header: /usr/users/istewart/src/shell/sh2.1/Release/RCS/ReadMe,v 2.1 1992/12/14 11:14:32 istewart Exp $
  17.  
  18.     $Log: ReadMe,v $
  19.     Revision 2.1  1992/12/14  11:14:32  istewart
  20.     BETA 215 Fixes and 2.1 Release
  21.  
  22.     Revision 2.0  1992/04/13  17:40:33  Ian_Stewartson
  23.     MS-Shell 2.0 Baseline release
  24.  
  25.     
  26. ________________________________________________________________________________
  27.  
  28. This is an implementation of the Unix Shell for MSDOS.  As far as possible it
  29. is compatible with the System V.4 program sh(1) with ksh(1) extension.  The
  30. following differences are noted:
  31.  
  32. 1)  Background or asynchronous commands are not supported under MSDOS.  Some
  33.     support is provided under OS/2, but it is not as full as UNIX.  You can
  34.     only run one command and not a pipeline in background.
  35.  
  36. 2)  Certain internal commands which have no equivalent MSDOS or OS/2 supported
  37.     functionality support (ulimit, time etc) are not provided.
  38.  
  39. 3)  Command hashing and accounting are not supported.
  40.  
  41. 4)  Some of the ksh functionality has not yet been implemented or made ksh
  42.     compatible (command line editing for example).
  43.  
  44. 5)  The Shell uses all variables starting with a ~ (tilde) internally and will
  45.     not allow you to display them.  I don't think this is a difference from
  46.     the user's view, just internally.
  47.  
  48. The Shell has been tested mainly under MSDOS 3.3 and 4.01, and OS/2 1.3.  But
  49. has also been run successfully on MSDOS 5.0 and OS/2 2.0.  It has exposed some
  50. shortcomings in the C6.0 compiler and MSDOS library.  As such, using C5.1 and
  51. its library are prefered when re-building the shell for MSDOS.
  52.  
  53. The following enhancements have been made for the MSDOS environment.  These
  54. enhancements are described in the appropriate section of the manual pages.
  55.  
  56. 1)  Under MSDOS, the Shell will swap itself out to one of the following:
  57.  
  58.     - Expanded memory
  59.     - Extended memory
  60.     - Disk (this is the slowest)
  61.  
  62.     The swapping is controlled by the shell internal command swap.  If
  63.     swapping is enabled, the shell only uses 3K of memory whilst a child
  64.     process is executing.
  65.  
  66.     Note: Swapping to Extended memory is probably the most dangerous unless
  67.       you have an XMS memory manager available.  The shell requires the
  68.       XMS manager to support the version 2 XMS specification.
  69.  
  70. 2)  History processing has been added.  It is not ksh compatible - more csh.
  71.  
  72. 3)  Command line editing has been added.  A configuration file (sh.ini) allows
  73.     the Command Line editing keys to be tailored to the users requirements.
  74.     It is not ksh compatible.
  75.  
  76. 4)  The command line prompt can be programmed to display 'useful' information.
  77.  
  78. 5)  The shell uses Unix format file names (ie slashes and not backslashes) to
  79.     delimit directories.  Some programs require certain environment variables
  80.     to be in MS-DOS format (using backslashes).  The msdos or typeset -H
  81.     commands allows these variables to be marked so that they are set correctly
  82.     when the environment for a program is set up.
  83.  
  84. 6)  The format of the command line which the shell passes to a program is
  85.     configurable between normal, indirect files and environment variables
  86.     (see SH.1).  A version of stdargv.c which supports the indirect file
  87.     format (and wildcards from a normal command line) is included.
  88.  
  89. 7)  Wild cards on drives (ie echo *:*.c will echo all the C files in the
  90.     current directories of each drive) are supported.
  91.  
  92. 8)  Full Interrupt 24 processing has been added.
  93.  
  94. 9)  Filename completion has been added.
  95.  
  96. 10) Alternate command interpreters are supported in shell scripts a la
  97.     Unix V.4.
  98.  
  99. 11) A number of OS/2 internal commands (start, detach) have been addded.
  100.  
  101. 12) Significant parts of the shell have been re-written this release 1.6.4.
  102.  
  103. 13) The Notes file describes the fixes and changes between Release 2.0 and
  104.     2.1
  105.  
  106.  
  107. The following Bugs are known to exist in the Shell.
  108.  
  109. 1)  Interrupting the MSDOS version via Control-C can cause the shell to hang.
  110.     I have been unable to track the cause of the problem down.  It appears to
  111.     occur if the interrupt takes place between the start of the swap process
  112.     and the completion of the load of the new application.  I cannot trace
  113.     it using CodeView and may need an ICE system which I don't currently
  114.     have access to.  Any fixes gratefully received.
  115.  
  116. 2)  The Shell is not 8-bit clean (to be fixed in a later release).
  117.  
  118. 3)  The escape character is not handled correctly in double-quotes (to be
  119.     fixed in a later release).
  120.  
  121. 4)  I may have mis-interpreted the functionality of either the UNIX version
  122.     of sh or ksh (tell me about it).
  123.  
  124. I apologise in advance for bugs 2 and 3 which I had intended to fix in
  125. release 2.  However, they a major changes which require understanding of
  126. the part of the shell I least understand and I have not be able to devote
  127. the time to do so.
  128.  
  129. The shell was built using Microsoft C 5.1 and MASM v5.1 in large model mode
  130. for MSDOS and Microsoft C6.0 for OS/2.
  131.  
  132. In order to rebuild this program, you need the following library functions
  133. (I normally compile and load them into my library so that they are always
  134. available, particularly the stdargv function).
  135.  
  136. 1)  The DIRECTORY(3) functions 
  137. 2)  The STDARGV(3) function - see earlier
  138. 3)  The GLOB(3) function, but only if you intend to use STDARGV other that
  139.     with the shell.
  140.  
  141. The sources for all these are included with the Shell source.
  142.  
  143. In addition, the version of open in your library must pass the O_NOINHERIT bit
  144. on the MSDOS kernel.  The Microsoft C v5.1 library (and possibly the v6.0) does
  145. not pass this bit on to the MSDOS open System call.  I fixed this using CodeView
  146. to find where the library function masks off the bottom 2 bits.  Extracted the
  147. object from the library and patched mask from 0x03 to 0x83 in the object and
  148. reload into the library.  No Problem.  The Patch.Lib document describes the
  149. process in more detail.
  150.  
  151. You can do want you like with this software as long as you don't sell it or
  152. remove the Copyright notices in the sources or object.
  153.  
  154. If you have any problems or want to let me know about any enhancements you
  155. have made (which could be included in a new general release), you can contact
  156. me at
  157.  
  158.     Data Logic Limited
  159.     Queens House
  160.     Greenhill Way
  161.     Harrow
  162.     Middlesex, HA1 1YR
  163.     UK.
  164.  
  165.     Phone : +44 1 863 0383
  166.     E-Mail: istewart@datlog.co.uk
  167.  
  168. Note:
  169.     Unix is a registered trademark of AT&T Bell Laboratories
  170.     Microsoft, MSDOS, MASM and CodeView are registered trademarks of Microsoft
  171.     Corporation
  172.     OS/2 is a registered trademark of Internation Business Machines Corporation
  173.  
  174. Acknowledgements:
  175.  
  176. This program is based on ideas, code or parts of code developed by:
  177.  
  178.     David Korn and Steve Bourne (the original ideas)
  179.     Charles Forsyth (original source for the MINIX Shell program)
  180.     Erik Baalbergen (original source for the MINIX test program)
  181.     Paul Falstad (original source for the maths functions from GNU zsh program)
  182.